<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet -->
<title>DefaultTrackSelector.Parameters (ExoPlayer library)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="DefaultTrackSelector.Parameters (ExoPlayer library)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":9,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2.trackselection</a></div>
<h2 title="Class DefaultTrackSelector.Parameters" class="title">Class DefaultTrackSelector.Parameters</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">com.google.android.exoplayer2.trackselection.TrackSelectionParameters</a></li>
<li>
<ul class="inheritance">
<li>com.google.android.exoplayer2.trackselection.DefaultTrackSelector.Parameters</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://developer.android.com/reference/android/os/Parcelable.html" title="class or interface in android.os" class="externalLink" target="_top">Parcelable</a></code></dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="DefaultTrackSelector.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector</a></dd>
</dl>
<hr>
<pre>public static final class <span class="typeNameLabel">DefaultTrackSelector.Parameters</span>
extends <a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></pre>
<div class="block">Extends <a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection"><code>TrackSelectionParameters</code></a> by adding fields that are specific to <a href="DefaultTrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector</code></a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.com.google.android.exoplayer2.trackselection.TrackSelectionParameters">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;com.google.android.exoplayer2.trackselection.<a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></h3>
<code><a href="TrackSelectionParameters.Builder.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters.Builder</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.android.os.Parcelable">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;android.os.<a href="https://developer.android.com/reference/android/os/Parcelable.html" title="class or interface in android.os" class="externalLink" target="_top">Parcelable</a></h3>
<code><a href="https://developer.android.com/reference/android/os/Parcelable.ClassLoaderCreator.html" title="class or interface in android.os" class="externalLink">Parcelable.ClassLoaderCreator</a>&lt;<a href="https://developer.android.com/reference/android/os/Parcelable.ClassLoaderCreator.html?is-external=true" title="class or interface in android.os" class="externalLink">T</a> extends <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;, <a href="https://developer.android.com/reference/android/os/Parcelable.Creator.html?is-external=true" title="class or interface in android.os" class="externalLink">Parcelable.Creator</a>&lt;<a href="https://developer.android.com/reference/android/os/Parcelable.Creator.html?is-external=true" title="class or interface in android.os" class="externalLink">T</a> extends <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&gt;</code></li>
</ul>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#allowAudioMixedChannelCountAdaptiveness">allowAudioMixedChannelCountAdaptiveness</a></span></code></th>
<td class="colLast">
<div class="block">Whether to allow adaptive audio selections containing mixed channel counts.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#allowAudioMixedMimeTypeAdaptiveness">allowAudioMixedMimeTypeAdaptiveness</a></span></code></th>
<td class="colLast">
<div class="block">Whether to allow adaptive audio selections containing mixed MIME types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#allowAudioMixedSampleRateAdaptiveness">allowAudioMixedSampleRateAdaptiveness</a></span></code></th>
<td class="colLast">
<div class="block">Whether to allow adaptive audio selections containing mixed sample rates.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#allowMultipleAdaptiveSelections">allowMultipleAdaptiveSelections</a></span></code></th>
<td class="colLast">
<div class="block">Whether multiple adaptive selections with more than one track are allowed.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#allowVideoMixedMimeTypeAdaptiveness">allowVideoMixedMimeTypeAdaptiveness</a></span></code></th>
<td class="colLast">
<div class="block">Whether to allow adaptive video selections containing mixed MIME types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#allowVideoNonSeamlessAdaptiveness">allowVideoNonSeamlessAdaptiveness</a></span></code></th>
<td class="colLast">
<div class="block">Whether to allow adaptive video selections where adaptation may not be completely seamless.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://developer.android.com/reference/android/os/Parcelable.Creator.html" title="class or interface in android.os" class="externalLink">Parcelable.Creator</a>&lt;<a href="DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection" target="_top">DefaultTrackSelector.Parameters</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#CREATOR">CREATOR</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.Parameters</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DEFAULT_WITHOUT_CONTEXT">DEFAULT_WITHOUT_CONTEXT</a></span></code></th>
<td class="colLast">
<div class="block">An instance with default values, except those obtained from the <a href="https://developer.android.com/reference/android/content/Context.html" title="class or interface in android.content" class="externalLink" target="_top"><code>Context</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#exceedAudioConstraintsIfNecessary">exceedAudioConstraintsIfNecessary</a></span></code></th>
<td class="colLast">
<div class="block">Whether to exceed the <a href="#maxAudioChannelCount"><code>maxAudioChannelCount</code></a> and <a href="#maxAudioBitrate"><code>maxAudioBitrate</code></a> constraints
 when no selection can be made otherwise.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#exceedRendererCapabilitiesIfNecessary">exceedRendererCapabilitiesIfNecessary</a></span></code></th>
<td class="colLast">
<div class="block">Whether to exceed renderer capabilities when no selection can be made otherwise.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#exceedVideoConstraintsIfNecessary">exceedVideoConstraintsIfNecessary</a></span></code></th>
<td class="colLast">
<div class="block">Whether to exceed the <a href="#maxVideoWidth"><code>maxVideoWidth</code></a>, <a href="#maxVideoHeight"><code>maxVideoHeight</code></a> and <a href="#maxVideoBitrate"><code>maxVideoBitrate</code></a> constraints when no selection can be made otherwise.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#forceHighestSupportedBitrate">forceHighestSupportedBitrate</a></span></code></th>
<td class="colLast">
<div class="block">Whether to force selection of the highest bitrate audio and video tracks that comply with all
 other constraints.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#forceLowestBitrate">forceLowestBitrate</a></span></code></th>
<td class="colLast">
<div class="block">Whether to force selection of the single lowest bitrate audio and video tracks that comply
 with all other constraints.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#maxAudioBitrate">maxAudioBitrate</a></span></code></th>
<td class="colLast">
<div class="block">Maximum allowed audio bitrate in bits per second.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#maxAudioChannelCount">maxAudioChannelCount</a></span></code></th>
<td class="colLast">
<div class="block">Maximum allowed audio channel count.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#maxVideoBitrate">maxVideoBitrate</a></span></code></th>
<td class="colLast">
<div class="block">Maximum allowed video bitrate in bits per second.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#maxVideoFrameRate">maxVideoFrameRate</a></span></code></th>
<td class="colLast">
<div class="block">Maximum allowed video frame rate in hertz.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#maxVideoHeight">maxVideoHeight</a></span></code></th>
<td class="colLast">
<div class="block">Maximum allowed video height in pixels.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#maxVideoWidth">maxVideoWidth</a></span></code></th>
<td class="colLast">
<div class="block">Maximum allowed video width in pixels.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#minVideoBitrate">minVideoBitrate</a></span></code></th>
<td class="colLast">
<div class="block">Minimum allowed video bitrate in bits per second.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#minVideoFrameRate">minVideoFrameRate</a></span></code></th>
<td class="colLast">
<div class="block">Minimum allowed video frame rate in hertz.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#minVideoHeight">minVideoHeight</a></span></code></th>
<td class="colLast">
<div class="block">Minimum allowed video height in pixels.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#minVideoWidth">minVideoWidth</a></span></code></th>
<td class="colLast">
<div class="block">Minimum allowed video width in pixels.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#preferredAudioMimeTypes">preferredAudioMimeTypes</a></span></code></th>
<td class="colLast">
<div class="block">The preferred sample MIME types for audio tracks in order of preference, or an empty list for
 no preference.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#preferredVideoMimeTypes">preferredVideoMimeTypes</a></span></code></th>
<td class="colLast">
<div class="block">The preferred sample MIME types for video tracks in order of preference, or an empty list for
 no preference.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tunnelingEnabled">tunnelingEnabled</a></span></code></th>
<td class="colLast">
<div class="block">Whether to enable tunneling if possible.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#viewportHeight">viewportHeight</a></span></code></th>
<td class="colLast">
<div class="block">Viewport height in pixels.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#viewportOrientationMayChange">viewportOrientationMayChange</a></span></code></th>
<td class="colLast">
<div class="block">Whether the viewport orientation may change during playback.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#viewportWidth">viewportWidth</a></span></code></th>
<td class="colLast">
<div class="block">Viewport width in pixels.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.com.google.android.exoplayer2.trackselection.TrackSelectionParameters">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;com.google.android.exoplayer2.trackselection.<a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></h3>
<code><a href="TrackSelectionParameters.html#DEFAULT">DEFAULT</a>, <a href="TrackSelectionParameters.html#disabledTextTrackSelectionFlags">disabledTextTrackSelectionFlags</a>, <a href="TrackSelectionParameters.html#preferredAudioLanguages">preferredAudioLanguages</a>, <a href="TrackSelectionParameters.html#preferredAudioRoleFlags">preferredAudioRoleFlags</a>, <a href="TrackSelectionParameters.html#preferredTextLanguages">preferredTextLanguages</a>, <a href="TrackSelectionParameters.html#preferredTextRoleFlags">preferredTextRoleFlags</a>, <a href="TrackSelectionParameters.html#selectUndeterminedTextLanguage">selectUndeterminedTextLanguage</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.android.os.Parcelable">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;android.os.<a href="https://developer.android.com/reference/android/os/Parcelable.html" title="class or interface in android.os" class="externalLink" target="_top">Parcelable</a></h3>
<code><a href="https://developer.android.com/reference/android/os/Parcelable.html#CONTENTS_FILE_DESCRIPTOR" title="class or interface in android.os" class="externalLink">CONTENTS_FILE_DESCRIPTOR</a>, <a href="https://developer.android.com/reference/android/os/Parcelable.html?is-external=true#PARCELABLE_WRITE_RETURN_VALUE" title="class or interface in android.os" class="externalLink" target="_top">PARCELABLE_WRITE_RETURN_VALUE</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="DefaultTrackSelector.ParametersBuilder.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.ParametersBuilder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#buildUpon()">buildUpon</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates a new <a href="DefaultTrackSelector.ParametersBuilder.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector.ParametersBuilder</code></a>, copying the initial values from this instance.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#describeContents()">describeContents</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equals(java.lang.Object)">equals</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;obj)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static <a href="DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.Parameters</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDefaults(android.content.Context)">getDefaults</a></span>&#8203;(<a href="https://developer.android.com/reference/android/content/Context.html" title="class or interface in android.content" class="externalLink" target="_top">Context</a>&nbsp;context)</code></th>
<td class="colLast">
<div class="block">Returns an instance configured with default values.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRendererDisabled(int)">getRendererDisabled</a></span>&#8203;(int&nbsp;rendererIndex)</code></th>
<td class="colLast">
<div class="block">Returns whether the renderer is disabled.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="DefaultTrackSelector.SelectionOverride.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.SelectionOverride</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSelectionOverride(int,com.google.android.exoplayer2.source.TrackGroupArray)">getSelectionOverride</a></span>&#8203;(int&nbsp;rendererIndex,
                    <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source">TrackGroupArray</a>&nbsp;groups)</code></th>
<td class="colLast">
<div class="block">Returns the override for the specified renderer and <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasSelectionOverride(int,com.google.android.exoplayer2.source.TrackGroupArray)">hasSelectionOverride</a></span>&#8203;(int&nbsp;rendererIndex,
                    <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source">TrackGroupArray</a>&nbsp;groups)</code></th>
<td class="colLast">
<div class="block">Returns whether there is an override for the specified renderer and <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#writeToParcel(android.os.Parcel,int)">writeToParcel</a></span>&#8203;(<a href="https://developer.android.com/reference/android/os/Parcel.html" title="class or interface in android.os" class="externalLink" target="_top">Parcel</a>&nbsp;dest,
             int&nbsp;flags)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></h3>
<code><a href="https://developer.android.com/reference/java/lang/Object.html#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink" target="_top">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a id="DEFAULT_WITHOUT_CONTEXT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT_WITHOUT_CONTEXT</h4>
<pre>public static final&nbsp;<a href="DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.Parameters</a> DEFAULT_WITHOUT_CONTEXT</pre>
<div class="block">An instance with default values, except those obtained from the <a href="https://developer.android.com/reference/android/content/Context.html" title="class or interface in android.content" class="externalLink" target="_top"><code>Context</code></a>.

 <p>If possible, use <a href="#getDefaults(android.content.Context)"><code>getDefaults(Context)</code></a> instead.

 <p>This instance will not have the following settings:

 <ul>
   <li><a href="DefaultTrackSelector.ParametersBuilder.html#setViewportSizeToPhysicalDisplaySize(android.content.Context,boolean)"><code>Viewport constraints</code></a> configured for the primary display.
   <li><a href="DefaultTrackSelector.ParametersBuilder.html#setPreferredTextLanguageAndRoleFlagsToCaptioningManagerSettings(android.content.Context)"><code>Preferred text language and role flags</code></a> configured to the accessibility settings of
       <a href="https://developer.android.com/reference/android/view/accessibility/CaptioningManager.html" title="class or interface in android.view.accessibility" class="externalLink" target="_top"><code>CaptioningManager</code></a>.
 </ul></div>
</li>
</ul>
<a id="maxVideoWidth">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxVideoWidth</h4>
<pre>public final&nbsp;int maxVideoWidth</pre>
<div class="block">Maximum allowed video width in pixels. The default value is <a href="https://developer.android.com/reference/java/lang/Integer.html#MAX_VALUE" title="class or interface in java.lang" class="externalLink" target="_top"><code>Integer.MAX_VALUE</code></a> (i.e.
 no constraint).

 <p>To constrain adaptive video track selections to be suitable for a given viewport (the
 region of the display within which video will be played), use (<a href="#viewportWidth"><code>viewportWidth</code></a>, <a href="#viewportHeight"><code>viewportHeight</code></a> and <a href="#viewportOrientationMayChange"><code>viewportOrientationMayChange</code></a>) instead.</div>
</li>
</ul>
<a id="maxVideoHeight">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxVideoHeight</h4>
<pre>public final&nbsp;int maxVideoHeight</pre>
<div class="block">Maximum allowed video height in pixels. The default value is <a href="https://developer.android.com/reference/java/lang/Integer.html#MAX_VALUE" title="class or interface in java.lang" class="externalLink" target="_top"><code>Integer.MAX_VALUE</code></a> (i.e.
 no constraint).

 <p>To constrain adaptive video track selections to be suitable for a given viewport (the
 region of the display within which video will be played), use (<a href="#viewportWidth"><code>viewportWidth</code></a>, <a href="#viewportHeight"><code>viewportHeight</code></a> and <a href="#viewportOrientationMayChange"><code>viewportOrientationMayChange</code></a>) instead.</div>
</li>
</ul>
<a id="maxVideoFrameRate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxVideoFrameRate</h4>
<pre>public final&nbsp;int maxVideoFrameRate</pre>
<div class="block">Maximum allowed video frame rate in hertz. The default value is <a href="https://developer.android.com/reference/java/lang/Integer.html#MAX_VALUE" title="class or interface in java.lang" class="externalLink" target="_top"><code>Integer.MAX_VALUE</code></a>
 (i.e. no constraint).</div>
</li>
</ul>
<a id="maxVideoBitrate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxVideoBitrate</h4>
<pre>public final&nbsp;int maxVideoBitrate</pre>
<div class="block">Maximum allowed video bitrate in bits per second. The default value is <a href="https://developer.android.com/reference/java/lang/Integer.html#MAX_VALUE" title="class or interface in java.lang" class="externalLink" target="_top"><code>Integer.MAX_VALUE</code></a> (i.e. no constraint).</div>
</li>
</ul>
<a id="minVideoWidth">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minVideoWidth</h4>
<pre>public final&nbsp;int minVideoWidth</pre>
<div class="block">Minimum allowed video width in pixels. The default value is 0 (i.e. no constraint).</div>
</li>
</ul>
<a id="minVideoHeight">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minVideoHeight</h4>
<pre>public final&nbsp;int minVideoHeight</pre>
<div class="block">Minimum allowed video height in pixels. The default value is 0 (i.e. no constraint).</div>
</li>
</ul>
<a id="minVideoFrameRate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minVideoFrameRate</h4>
<pre>public final&nbsp;int minVideoFrameRate</pre>
<div class="block">Minimum allowed video frame rate in hertz. The default value is 0 (i.e. no constraint).</div>
</li>
</ul>
<a id="minVideoBitrate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minVideoBitrate</h4>
<pre>public final&nbsp;int minVideoBitrate</pre>
<div class="block">Minimum allowed video bitrate in bits per second. The default value is 0 (i.e. no
 constraint).</div>
</li>
</ul>
<a id="exceedVideoConstraintsIfNecessary">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>exceedVideoConstraintsIfNecessary</h4>
<pre>public final&nbsp;boolean exceedVideoConstraintsIfNecessary</pre>
<div class="block">Whether to exceed the <a href="#maxVideoWidth"><code>maxVideoWidth</code></a>, <a href="#maxVideoHeight"><code>maxVideoHeight</code></a> and <a href="#maxVideoBitrate"><code>maxVideoBitrate</code></a> constraints when no selection can be made otherwise. The default value is
 <code>true</code>.</div>
</li>
</ul>
<a id="allowVideoMixedMimeTypeAdaptiveness">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowVideoMixedMimeTypeAdaptiveness</h4>
<pre>public final&nbsp;boolean allowVideoMixedMimeTypeAdaptiveness</pre>
<div class="block">Whether to allow adaptive video selections containing mixed MIME types. Adaptations between
 different MIME types may not be completely seamless, in which case <a href="#allowVideoNonSeamlessAdaptiveness"><code>allowVideoNonSeamlessAdaptiveness</code></a> also needs to be <code>true</code> for mixed MIME type
 selections to be made. The default value is <code>false</code>.</div>
</li>
</ul>
<a id="allowVideoNonSeamlessAdaptiveness">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowVideoNonSeamlessAdaptiveness</h4>
<pre>public final&nbsp;boolean allowVideoNonSeamlessAdaptiveness</pre>
<div class="block">Whether to allow adaptive video selections where adaptation may not be completely seamless.
 The default value is <code>true</code>.</div>
</li>
</ul>
<a id="viewportWidth">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>viewportWidth</h4>
<pre>public final&nbsp;int viewportWidth</pre>
<div class="block">Viewport width in pixels. Constrains video track selections for adaptive content so that only
 tracks suitable for the viewport are selected. The default value is the physical width of the
 primary display, in pixels.</div>
</li>
</ul>
<a id="viewportHeight">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>viewportHeight</h4>
<pre>public final&nbsp;int viewportHeight</pre>
<div class="block">Viewport height in pixels. Constrains video track selections for adaptive content so that
 only tracks suitable for the viewport are selected. The default value is the physical height
 of the primary display, in pixels.</div>
</li>
</ul>
<a id="viewportOrientationMayChange">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>viewportOrientationMayChange</h4>
<pre>public final&nbsp;boolean viewportOrientationMayChange</pre>
<div class="block">Whether the viewport orientation may change during playback. Constrains video track
 selections for adaptive content so that only tracks suitable for the viewport are selected.
 The default value is <code>true</code>.</div>
</li>
</ul>
<a id="preferredVideoMimeTypes">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>preferredVideoMimeTypes</h4>
<pre>public final&nbsp;<a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&gt; preferredVideoMimeTypes</pre>
<div class="block">The preferred sample MIME types for video tracks in order of preference, or an empty list for
 no preference. The default is an empty list.</div>
</li>
</ul>
<a id="maxAudioChannelCount">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxAudioChannelCount</h4>
<pre>public final&nbsp;int maxAudioChannelCount</pre>
<div class="block">Maximum allowed audio channel count. The default value is <a href="https://developer.android.com/reference/java/lang/Integer.html#MAX_VALUE" title="class or interface in java.lang" class="externalLink" target="_top"><code>Integer.MAX_VALUE</code></a> (i.e. no
 constraint).</div>
</li>
</ul>
<a id="maxAudioBitrate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxAudioBitrate</h4>
<pre>public final&nbsp;int maxAudioBitrate</pre>
<div class="block">Maximum allowed audio bitrate in bits per second. The default value is <a href="https://developer.android.com/reference/java/lang/Integer.html#MAX_VALUE" title="class or interface in java.lang" class="externalLink" target="_top"><code>Integer.MAX_VALUE</code></a> (i.e. no constraint).</div>
</li>
</ul>
<a id="exceedAudioConstraintsIfNecessary">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>exceedAudioConstraintsIfNecessary</h4>
<pre>public final&nbsp;boolean exceedAudioConstraintsIfNecessary</pre>
<div class="block">Whether to exceed the <a href="#maxAudioChannelCount"><code>maxAudioChannelCount</code></a> and <a href="#maxAudioBitrate"><code>maxAudioBitrate</code></a> constraints
 when no selection can be made otherwise. The default value is <code>true</code>.</div>
</li>
</ul>
<a id="allowAudioMixedMimeTypeAdaptiveness">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowAudioMixedMimeTypeAdaptiveness</h4>
<pre>public final&nbsp;boolean allowAudioMixedMimeTypeAdaptiveness</pre>
<div class="block">Whether to allow adaptive audio selections containing mixed MIME types. Adaptations between
 different MIME types may not be completely seamless. The default value is <code>false</code>.</div>
</li>
</ul>
<a id="allowAudioMixedSampleRateAdaptiveness">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowAudioMixedSampleRateAdaptiveness</h4>
<pre>public final&nbsp;boolean allowAudioMixedSampleRateAdaptiveness</pre>
<div class="block">Whether to allow adaptive audio selections containing mixed sample rates. Adaptations between
 different sample rates may not be completely seamless. The default value is <code>false</code>.</div>
</li>
</ul>
<a id="allowAudioMixedChannelCountAdaptiveness">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowAudioMixedChannelCountAdaptiveness</h4>
<pre>public final&nbsp;boolean allowAudioMixedChannelCountAdaptiveness</pre>
<div class="block">Whether to allow adaptive audio selections containing mixed channel counts. Adaptations
 between different channel counts may not be completely seamless. The default value is <code>
 false</code>.</div>
</li>
</ul>
<a id="preferredAudioMimeTypes">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>preferredAudioMimeTypes</h4>
<pre>public final&nbsp;<a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&gt; preferredAudioMimeTypes</pre>
<div class="block">The preferred sample MIME types for audio tracks in order of preference, or an empty list for
 no preference. The default is an empty list.</div>
</li>
</ul>
<a id="forceLowestBitrate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forceLowestBitrate</h4>
<pre>public final&nbsp;boolean forceLowestBitrate</pre>
<div class="block">Whether to force selection of the single lowest bitrate audio and video tracks that comply
 with all other constraints. The default value is <code>false</code>.</div>
</li>
</ul>
<a id="forceHighestSupportedBitrate">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forceHighestSupportedBitrate</h4>
<pre>public final&nbsp;boolean forceHighestSupportedBitrate</pre>
<div class="block">Whether to force selection of the highest bitrate audio and video tracks that comply with all
 other constraints. The default value is <code>false</code>.</div>
</li>
</ul>
<a id="exceedRendererCapabilitiesIfNecessary">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>exceedRendererCapabilitiesIfNecessary</h4>
<pre>public final&nbsp;boolean exceedRendererCapabilitiesIfNecessary</pre>
<div class="block">Whether to exceed renderer capabilities when no selection can be made otherwise.

 <p>This parameter applies when all of the tracks available for a renderer exceed the
 renderer's reported capabilities. If the parameter is <code>true</code> then the lowest quality
 track will still be selected. Playback may succeed if the renderer has under-reported its
 true capabilities. If <code>false</code> then no track will be selected. The default value is
 <code>true</code>.</div>
</li>
</ul>
<a id="tunnelingEnabled">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tunnelingEnabled</h4>
<pre>public final&nbsp;boolean tunnelingEnabled</pre>
<div class="block">Whether to enable tunneling if possible.</div>
</li>
</ul>
<a id="allowMultipleAdaptiveSelections">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowMultipleAdaptiveSelections</h4>
<pre>public final&nbsp;boolean allowMultipleAdaptiveSelections</pre>
<div class="block">Whether multiple adaptive selections with more than one track are allowed. The default value
 is <code>true</code>.

 <p>Note that tracks are only eligible for adaptation if they define a bitrate, the renderers
 support the tracks and allow adaptation between them, and they are not excluded based on
 other track selection parameters.</div>
</li>
</ul>
<a id="CREATOR">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CREATOR</h4>
<pre>public static final&nbsp;<a href="https://developer.android.com/reference/android/os/Parcelable.Creator.html" title="class or interface in android.os" class="externalLink">Parcelable.Creator</a>&lt;<a href="DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection" target="_top">DefaultTrackSelector.Parameters</a>&gt; CREATOR</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="getDefaults(android.content.Context)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaults</h4>
<pre class="methodSignature">public static&nbsp;<a href="DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.Parameters</a>&nbsp;getDefaults&#8203;(<a href="https://developer.android.com/reference/android/content/Context.html" title="class or interface in android.content" class="externalLink" target="_top">Context</a>&nbsp;context)</pre>
<div class="block">Returns an instance configured with default values.</div>
</li>
</ul>
<a id="getRendererDisabled(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRendererDisabled</h4>
<pre class="methodSignature">public final&nbsp;boolean&nbsp;getRendererDisabled&#8203;(int&nbsp;rendererIndex)</pre>
<div class="block">Returns whether the renderer is disabled.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rendererIndex</code> - The renderer index.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Whether the renderer is disabled.</dd>
</dl>
</li>
</ul>
<a id="hasSelectionOverride(int,com.google.android.exoplayer2.source.TrackGroupArray)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasSelectionOverride</h4>
<pre class="methodSignature">public final&nbsp;boolean&nbsp;hasSelectionOverride&#8203;(int&nbsp;rendererIndex,
                                          <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source">TrackGroupArray</a>&nbsp;groups)</pre>
<div class="block">Returns whether there is an override for the specified renderer and <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rendererIndex</code> - The renderer index.</dd>
<dd><code>groups</code> - The <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Whether there is an override.</dd>
</dl>
</li>
</ul>
<a id="getSelectionOverride(int,com.google.android.exoplayer2.source.TrackGroupArray)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSelectionOverride</h4>
<pre class="methodSignature">@Nullable
public final&nbsp;<a href="DefaultTrackSelector.SelectionOverride.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.SelectionOverride</a>&nbsp;getSelectionOverride&#8203;(int&nbsp;rendererIndex,
                                                                         <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source">TrackGroupArray</a>&nbsp;groups)</pre>
<div class="block">Returns the override for the specified renderer and <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rendererIndex</code> - The renderer index.</dd>
<dd><code>groups</code> - The <a href="../source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The override, or null if no override exists.</dd>
</dl>
</li>
</ul>
<a id="buildUpon()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildUpon</h4>
<pre class="methodSignature">public&nbsp;<a href="DefaultTrackSelector.ParametersBuilder.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.ParametersBuilder</a>&nbsp;buildUpon()</pre>
<div class="block">Creates a new <a href="DefaultTrackSelector.ParametersBuilder.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector.ParametersBuilder</code></a>, copying the initial values from this instance.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="TrackSelectionParameters.html#buildUpon()">buildUpon</a></code>&nbsp;in class&nbsp;<code><a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></code></dd>
</dl>
</li>
</ul>
<a id="equals(java.lang.Object)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;equals&#8203;(@Nullable
                      <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;obj)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="TrackSelectionParameters.html#equals(java.lang.Object)">equals</a></code>&nbsp;in class&nbsp;<code><a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></code></dd>
</dl>
</li>
</ul>
<a id="hashCode()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="TrackSelectionParameters.html#hashCode()">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></code></dd>
</dl>
</li>
</ul>
<a id="describeContents()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>describeContents</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;describeContents()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="https://developer.android.com/reference/android/os/Parcelable.html#describeContents()" title="class or interface in android.os" class="externalLink">describeContents</a></code>&nbsp;in interface&nbsp;<code><a href="https://developer.android.com/reference/android/os/Parcelable.html?is-external=true" title="class or interface in android.os" class="externalLink" target="_top">Parcelable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="TrackSelectionParameters.html#describeContents()">describeContents</a></code>&nbsp;in class&nbsp;<code><a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></code></dd>
</dl>
</li>
</ul>
<a id="writeToParcel(android.os.Parcel,int)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>writeToParcel</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;writeToParcel&#8203;(<a href="https://developer.android.com/reference/android/os/Parcel.html" title="class or interface in android.os" class="externalLink" target="_top">Parcel</a>&nbsp;dest,
                          int&nbsp;flags)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="https://developer.android.com/reference/android/os/Parcelable.html#writeToParcel(android.os.Parcel,int)" title="class or interface in android.os" class="externalLink">writeToParcel</a></code>&nbsp;in interface&nbsp;<code><a href="https://developer.android.com/reference/android/os/Parcelable.html?is-external=true" title="class or interface in android.os" class="externalLink" target="_top">Parcelable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="TrackSelectionParameters.html#writeToParcel(android.os.Parcel,int)">writeToParcel</a></code>&nbsp;in class&nbsp;<code><a href="TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
</footer>
</body>
</html>
